[PHP] Programowanie obiektowe

Czy warto od razu uczyć się programowania objektowego w PHP, czy na początek lepiej skupić się na tym "tradycyjnym", tzn strukturalnym?

Dopiero uczę się PHP, i jestem w stanie już cośtam napisać, prosty system cms, panel admina do strony. Ale nie rozumiem w pełni programowania obiektowego. Czy to ma duże znaczenie? Warto pisać obiektowo? Według mnie jest trudniej...

2 lata, 3 miesiące temu | edytowane przez: lqc 3965112

  • Jest trudniej. Ale moim zdaniem warto się do tego przyłożyć i... trzeba! Kiedy przepisywałem niedawno, jedną ze swoich pierwszych aplikacji, po prostu za głowę się łapałem momentami. Fakt działała, ale kod to jakaś masakra była.

    Tak, pisząc obiektowo też można zrobić syf i to niezły, ale moim zdaniem daje większe możliwości zapanowania nad kodem. Jest jeszcze wiele "za", ale nawet z tego jednego powodu, warto!

    Pozdrawiam, Andrzej

  • Jeżeli możesz gdzieś dojść na piechotę - idź na piechotę. Jeżeli nie możesz - weź samochód.

    Programowanie obiektowe jest jak samochód którym możesz dojechać tam gdzie na piechotę raczej nie dojdziesz. Ktoś powiedział kiedyś, że programowanie w PHP wymaga dużej samodyscypliny i miał rację. Musisz poznać wzorce projektowe i założenia programowania zorientowanego obiektowo. Jeżeli tego nie będziesz robił sam to Twój kod w PHP będzie prosty, pisany szybko,wygodnie ale bezużyteczny. A chcesz pisać kod do którego chętnie wrócisz.

    Oprócz tego, żeby zobaczyć korzyści z obiektówki przydałoby się, żebyś wymyślał sobie jakieś bardziej skomplikowane projekty, na przykład przedstawiające dane na kilka sposobów itp.

    A więc na początek:

    Analiza obiektowa

    Wzorce projektowe

  • Jeżeli jesteś tak mądry, szybko przyswajasz wiedzę, to ucz się obiektowego.

  • Przyzwyczaisz się, ale szczerze powiedziawszy, polecił bym Pythona, parę osób które znam i uczyły się PHP przerzucają się powolutku właśnie na Pythona - jeszcze możesz zapoznać się z Ruby On Rails.

    W każdym bądź razie, programowanie obiektowe jest wygodniejsze przy większych projektach.

  • Zrozumienie programowania obiektowego w tych czasach jest podstawą. Bez programowania obiektowego już się nie pisze aplikacji w twoim przypadku np. w php5 (od tego wydania php w pełni obsługuje progr. obiektowe). Programowanie strukturalne na krótką metę się przydaje ale gdy tworzymy duży projekt można się totalnie pogubić. Nie ukrywam, że zrozumienie sensu i nauczenie się obiektowości jest dosyć trudne ale możliwości i korzyści, jakie z tego płyną są ogromne.

    Największym atutem programowania, projektowania oraz analizy obiektowej jest zgodność takiego podejścia z rzeczywistością (wiki) i ten cytat może w pełni zoobrazować czemu programowanie obiektowe jest tak ważną kwestią. Najważniejsze w tym wszystkim są klasy i obiekty ale to temat rozbudowany i można o nim poczytać niemal wszędzie. Do tego dochodzą takie pojęcia jak dziedziczenie, polimorfizm, właściwości...

    Jak dla mnie najpierw opanowałbym dobrze programowanie strukturalne, czy proceduralne i dobrze przygotował się do programowania obiektowego.

    Małymi krokami nie na siłę bo tak się nigdy nie pojmie sensu programowania obiektowego.

  • Od programowania obiektowego nie uciekniesz. Wystarczy, że zechcesz użyć jakiegoś frameworka i okaże się, że musisz zrozumieć co to dziedziczenie, polimorfizm itp. Z tego względu jak dla mnie lepiej przysiąść do trudniejszego programowania obiektowego i uczyć się w kolejności takiej:

    1. Zasady programowania obiektowego
    2. Wzorce projektowe
    3. MVC
    4. framework - Symfony, Zend, coś innego

    Znajomość tych punktów pozwoli Ci na pisanie kodu przenośnego, skalowalnego, mniej zabałaganionego przez co czytelniejszego.

  • Ja zaczynałem od php i uważam, że lepszy do obiektówki będzie tak jak powiedział nilphilus python.

    Poza tym warto poczytać ogólnie o koncepcji programowania obiektowego żeby umieć przenieść pewne zdarzenia na program.

    I na razie polecam ćwiczyć programowanie strukturalne.

    Dlaczego? Bo trzeba ćwiczyć, ćwiczyć i ćwiczyć. A tak oswoisz się z składnią i łatwiej będzie się pisać metody obiektów.

  • Tak jak przedmówcy, ucz się programowania obiektowego. Strukturalnego nauczysz się samoczynnie, pisząc różne metody, biblioteki. Biorąc pod uwagę rozwój TOPowych języków programowania bez obiektowości nie dasz rady. Ja żałuję że tak długo czekałem z przejściem na obiektowość. Teraz nawet PHP udostepnia takie możliwości. NIe mówię już o javie, C#, w których to językach bez obiektowości w ogóle nie dasz rady.

  • Zgadzam się z większością. Nie ma sensu marnować swojej głowy i czasu. Ucz się tylko obiektówki. Strukturalne programowanie to zaszłość, którą wciskają na uczelniach zupełnie bez sensu. Obiektując patrzysz już nawet nie w przyszłość, ale w teraźniejszość.

    A jak nauczysz się PHP obiektowo, to bez dużego wysiłku poradzisz sobie z innymi, bardziej obiektowymi językami. PHP jest właśnie dobry do nauki obiektowości, bo dużo wybacza.

    Również, jak poczujesz potrzebę, to będziesz sobie dobrze radził w programowaniu we Flashu.

  • Także jak inni polecę ci naukę obiektowego PHP, jest to zawsze duży krok do przodu i potem ułatwi dogłebną naukę innych języków programowania. Do tego będziesz mógł wykorzystywać frameowrki, lepiej zrozumiesz zasadę ich działania i dzięki teu twoje aplikacje webowe będą lepsze - co ucieszy Ciebie i Twoich klientów.

    Do nauki obiektowego Php'a polecam:

    PHP5. Zaawansowane programowanie

Zaloguj się, aby dodać swoją odpowiedź